package com.xx.sg.own.entity;

import com.alibaba.fastjson2.JSONObject;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.xx.sg.handler.ListJsonToStringHandler;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@TableName("sg_watch_tower")
public class WatchTower {
    @TableId(value = "id", type = IdType.ASSIGN_UUID)
    private String id;

    @TableField(value = "area_id")
    private String areaId;

    //名称
    @TableField(value = "name")
    private String name;

    //呼号
    @TableField(value = "call_no")
    private String callNo;

    //海拔
    @TableField(value = "altitude")
    private String altitude;

    //经度
    @TableField(value = "longitude")
    private String longitude;

    //纬度
    @TableField(value = "latitude")
    private String latitude;

    //建塔时间
    @TableField(value = "build_tower_date")
    private String buildTowerDate;

    //位置
    @TableField(value = "position")
    private String position;

    //林班
    @TableField(value = "forest_spot")
    private String forestSpot;

    //瞭望员
    @TableField(value = "lookout", typeHandler = ListJsonToStringHandler.class)
    private List<JSONObject> lookout;

    //供暖方式
    @TableField(value = "heat_type")
    private String heatType;

    //供电方式
    @TableField(value = "ele_type")
    private String eleType;

    //观测范围
    @TableField(value = "observation_range")
    private String observationRange;

    //水枪
    @TableField(value = "sq_cnt")
    private Integer sqCnt;

    //车载台
    @TableField(value = "czt_cnt")
    private Integer cztCnt;

    //对讲机
    @TableField(value = "djj_cnt")
    private Integer djjCnt;

    //分离灭火器
    @TableField(value = "flmhj_cnt")
    private Integer flmhjCnt;

    //干粉灭火器
    @TableField(value = "gfmq_cnt")
    private Integer gfmqCnt;

    //二号工具数量
    @TableField(value = "ergj_cnt")
    private Integer ergjCnt;

    //图片
    @TableField(value = "img")
    private String img;

}
